home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 April: Mac OS SDK / Dev.CD Apr 00 SDK1.toast / Development Kits / Mac OS / Apple Guide / Engineering / Context Check Modules / Trackpad or Trackball CC / IsTrackPad.c next >
Encoding:
C/C++ Source or Header  |  1994-04-26  |  1.1 KB  |  58 lines  |  [TEXT/KAHL]

  1. /****************************************/
  2.     
  3. /*    IsTrackPad.c                        */
  4. /*    Author:             Shemin Gau, IP    */
  5. /*    Revision History:    02/21/94        */
  6.  
  7. /****************************************/
  8.  
  9.  
  10. #include <Memory.h>
  11. #include <Types.h>
  12. #include <GestaltEqu.h>
  13. #include <Processes.h>
  14. #include <String.h>
  15. #include <CType.h>
  16. #include <Packages.h>
  17. #include <OSUtils.h>
  18. #include <ToolUtils.h>
  19. #include <Errors.h>
  20.  
  21.  
  22. OSErr SetContextResult(void* theData, Size theSize, Ptr* outMessage, Size* outSize);
  23.  
  24.  
  25. pascal OSErr main(char msg, Size inSize, void* outMessage, Size* outSize, Handle ignoreMe)
  26. {        
  27.     OSErr        myErr = noErr;
  28.     long        tp_response;
  29.     
  30.     Boolean        result = false;
  31.     
  32.             
  33.     myErr = Gestalt('tpad', &tp_response);    
  34.     if (myErr == noErr) {
  35.         result = true;
  36.     }
  37.     
  38.     myErr = SetContextResult(&result, sizeof(Boolean), outMessage, outSize);
  39.     return(myErr);
  40. }
  41.  
  42.  
  43. OSErr SetContextResult(void* theData, Size theSize, Ptr* outMessage, Size* outSize)
  44. {
  45.     Ptr    p;
  46.     
  47.     if (p = NewPtr(theSize)) {
  48.         BlockMove(theData, p, theSize);
  49.         
  50.         *outSize = theSize;
  51.         *outMessage    = p;
  52.         
  53.         return(noErr);
  54.     } else {
  55.         return(MemError());
  56.     }
  57. }
  58.